home *** CD-ROM | disk | FTP | other *** search
-
- Overview
-
- GNATS data can be extracted and uploaded into a relational
- database. The advantages for doing this include
-
- 1. Interfacing the problem report information with other
- information, e.g., a customer database
-
- 2. Take advantage of report writers to generate production
- reports or more sophisticated report generation
- capabilities not present in GNATS
-
- 3. Perform complex queries available in SQL but not
- supported in GNATS
-
- This directory includes a set of scripts that interfaces
- GNATS to an Informix relational database application.
- There are four types of script in the current directory:
-
- Ignats.* Unix shell scripts
- *.sql SQL (Structured Query Language) scripts,
- *.ace Informix report generator source code
- *.4gl Informix 4GL source code
-
- A sample set of crontab entries has also been providedi in the
- file crontab. An index to the files is provided in the file fileList.
-
- This code is unsupported, and is provided only as an example of
- how you could use GNATS in conjunction with a relational
- database management system (rdbms).
-
-
- Application Structure
-
- In this example, GNATS is main working database for the
- developers. Extracted data are upload daily into the relational
- database for generation of management reports, overview
- statistics, and special queries. Once the database has
- been created, most of the interactions are driven by
- shell scripts scheduled through the Unix cron utility.
-
- Two Unix system users are assumed: "manager", who creates
- the database, and "staff", who receives some of the output
- reports via email.
-
- See the GNATS and Informix manuals for more details on the
- specifics of the software.
-
-
- Database Creation
-
- The main database consists of 5 tables, one for the problem reports
- and one each for the severity, priority, class, and state codes.
- An additional table is used to hold a history of weekly summary
- statistics.
-
- The 3 script files used to create these tables, their indices,
- and access permissions, are as follows.
-
- crGNATS.sql
- crCodes.sql
- crHist.sql
-
- Permissions are set to read/write permission for the creator,
- "manager", and read only for the rest of the world. These scripts
- are run manually once to create the database, and are not in the
- cron table.
-
- Two additional tables can be created to hold previous week's
- data in order to report on which problem reports have been
- updated in the last week. These tables are created in
-
- crOGNATS.sql
-
- with the same access permissions.
-
-
- Scheduled Activities and Reports
-
- Regular activities and reports by scheduled through cron.
- (See appendix A.)
-
- Daily:
-
- 1. Extract data from GNATS by running query-pr.
-
- 2. Upload data in database
-
- 3. Calculate the age of each problem report at the time
- of the upload.
-
- 4. Report on the problem reports that are of severity
- "critical" that have not yet been fixed, i.e., in
- either the "open" or "analyzed" states.
-
- Weekly:
-
- 1. Manage the buffering of data from the last 2 weeks.
-
- 2. Generate summary statistics on the number of problem
- reports in each of the known states, and store
- into history table.
-
- 3. Generate the following management reports:
-
- - summary statistics on the problem reports in each
- of the known states for the last two weeks
-
- - list of problem reports that have changed state
- in the past week
-
- - list of new problem reports for the past week
-
- - list of problem reports that are still not closed
-
- - list of change requests that are still not closed
-
- - statistics on "critical" and "serious" problem
- reports that have not been fixed, grouped by
- customer
-
- - statistics on "critical" and "serious" problem
- reports that have not been fixed, grouped by
- responsible person
-
- 4. Generate customer-specific lists of problem reports
-
- Monthly:
-
- 1. Generate historical record of the problem report
- statistics, in absolute counts and as a percentage of
- total problem reports.
-
-
- Additional Scripts
-
- A number of additional SQL scripts and report scripts
- not scheduled through cron are provided as examples.
- These can be customized to your specific needs.
-
-
- Customization and Use
-
- The scripts mentioned above have been tested on a Sun 4
- workstation running Sun OS 4.1.x and Informix SE 5.x and
- Informix ISQL 4.1. You will need an Informix Development
- licence to compile and use the report generator sources.
-
- Shell scripts should be reviewed for the correct pathnames
- where programs and reports are to be located. Some of the
- scripts send email, or use parameterized reports that need
- local customization.
-
- The SQL scripts should be easily portable to other relational
- database systems supporting SQL. Informix report generator
- sources are not portable, but can serve as examples for
- report generators from other database vendors.
-
-
-
-
- APPENDIX A
-
-
- --------------------------------------------------------------------------
- Shell script Informix Program* Informix Script
- --------------------------------------------------------------------------
-
- Daily:
-
- Ignats.setup query-pr --sql
- isql engdb loadGNATS.sql
- fglgo calc_age
-
- Ignats.summdy isql engdb cat_rev.sql
-
-
- Weekly:
-
- Ignats.summwk fglgo summ_wk.4gl
- isql engdb cust_rev.sql
- isql engdb engr_rev.sql
-
- Ignats.wkbuffs isql engdb loadOGNATS.sql
-
- Ignats.wkchng sacego wk_delta
- sacego wk_open
- sacego wk_st_chng
- sacego open
- sacego enhreq
-
- Ignats.cust sacego bcust (custname)
-
-
- Monthly:
-
- Ignats.summmn sacego history
- sacego historyPC
-
- --------------------------------------------------------------------------
-
-
- * isql - SQL interpreter
- sacego - report generator
- fglgo - 4GL
-